print('====================以下为for……in循环输出结果====================')

for i in range(1,10): #定义列输出次数，为9次
    s='' #定义一个空字符串s，并且每次行输出后重置
    for o in range(i,10): #定义行输出次数，9次递减1次结束
        s += '{0}*{1}={2:<3}'.format(i,o,i*o) #将输出结果集合储存到s空字符中
    print(s) #行输出结果

print('============================左上===============================')#代码块标注

for i in range(1,10):
    s=''
    for j in range(i,9):#定义行输出次数，8次递减0次结束
        s +='       '#每次循环填充7个空格
    for o in range(1,i+1):#定义行输出次数，1次开始9次结束
        s += '{}*{}={:<3}'.format(o,i,i*o)
    print(s)

print('============================右下===============================')

for i in range(1,10):
    s=''
    for j in range(1,i):
        print(end='       ')
    for o in range(i,10):
        s += '{}*{}={:<3}'.format(o, i, i * o)
    print(s)

print('============================右上===============================')

for i in range(1,10):
    s=''
    for o in range(1,i+1):
        s += '{}*{}={:<3}'.format(o,i,i*o)
    print(s)

print('============================左下===============================')

print()

print('====================以下为while循环输出结果======================')

num1 = 1 #给num1赋值为1
while num1<=9:#定义列输出次数为9次开始
    s = ''#给s赋值为空字符，并且没吃循环重置
    num2=num1#把num1赋值给num2,并且每次循环重置num2的值
    while num2<=9:#定义行输出次数为9次开始
        s += '{}*{}={:<3}'.format(num1,num2,num1*num2)#把行输出值用s储存
        num2+=1#num2递增
    print(s)#输出，行输出值
    num1+=1#num1递增

print('============================左上===============================')

num1 = 1
while num1 <=9:
    s = ''
    num3 = 1#把1赋值给num3，并且每次循环完重置
    while num3 <num1:#定义填充空字符次数，0次开始
        s += '       '#空字符填充
        num3 += 1#num3递增
    num2 = num1
    while num2 <=9:
        s += '{}*{}={:<3}'.format(num2,num1,num1*num2)
        num2 += 1
    print(s)
    num1 += 1

print('============================右上===============================')

num1 = 1
while num1 <= 9:
    num2 = 1#给num2赋值为1，并且每次循环重置
    s = ''
    while num2 <=num1 :#定义行输出次数，1次开始
        s += '{}*{}={:<3}'.format(num2,num1,num1*num2)
        num2 += 1
    print(s)
    num1 += 1
print('============================左下===============================')

num1 = 1
while num1 <= 9:
    s = ''
    num3 = num1#给num3赋值为num1，并且每次循环重置
    while num3 < 9:#定义空字符填充次数，8次开始
        s += '       '
        num3 += 1
    num2 = 1
    while num2 <= num1:
        s += '{}*{}={:<3}'.format(num2,num1,num1*num2)
        num2 += 1
    print(s)
    num1 += 1

print('============================右下===============================')